package com.dc.wifi.main.utils;

import android.content.Context;
import android.media.MediaPlayer;
import android.os.Handler;

public class AudioPlayerUtil222 {
    private MediaPlayer mediaPlayer;
    private Context context;
    private long interval; // 播放间隔时间，单位为毫秒

    public AudioPlayerUtil222(Context context) {
        this.context = context;
        this.interval = 0; // 默认没有间隔
    }

    /**
     * 开始播放音频
     */
    public void playAudio(int resId) {
        if (mediaPlayer != null) {
            mediaPlayer.release();
        }
        mediaPlayer = MediaPlayer.create(context, resId);
        if (mediaPlayer != null) {
            mediaPlayer.start();
            scheduleNextPlay(); // 如果设置了间隔，则计划下一次播放
        }
    }

    /**
     * 设置播放间隔时间
     * @param intervalMillis 间隔时间，单位为毫秒
     */
    public void setInterval(long intervalMillis) {
        this.interval = intervalMillis;
        if (mediaPlayer != null && mediaPlayer.isPlaying()) {
            // 如果音频正在播放，重新计划下一次播放
            scheduleNextPlay();
        }
    }

    /**
     * 计划下一次播放
     */
    private void scheduleNextPlay() {
        if (interval > 0) {
            // 停止当前播放，设置下一次播放的时间
            mediaPlayer.pause();
            new Handler().postDelayed(new Runnable() {
                @Override
                public void run() {
                    mediaPlayer.start();
                }
            }, interval);
        }
    }

    /**
     * 停止播放音频
     */
    public void stopAudio() {
        if (mediaPlayer != null) {
            mediaPlayer.stop();
            mediaPlayer.release();
            mediaPlayer = null;
        }
    }

    /**
     * 释放资源
     */
    public void release() {
        stopAudio();
    }
}